package com.jin.jpa.wrapper.support;

/**
 * @Author: yuanxiuyao
 * @Date: 2024/1/4 15:13
 * @Version 1.0
 */
public interface IWhereWrapper<T, R> {

    R and();

    R or();

    R and(FieldFunction<T, ?> expression, Object value);

    R or(FieldFunction<T, ?> expression, Object value);

    R andNull(FieldFunction<T, ?> expression);

    R andNotNull(FieldFunction<T, ?> expression);

    R orNull(FieldFunction<T, ?> expression);

    R orNotNull(FieldFunction<T, ?> expression);

    R between(FieldFunction<T, ?> expression, Object value1, Object value2);

}
